/************************************************************************

								Heroes IV
					  Copyright 2000, The 3DO Company

	------------------------------------------------------------------
  						 stoning_animation.h

	$Header: /heroes4/stoning_animation.h $

	$NoKeywords: $

 ************************************************************************/

#if !defined( STONING_ANIMATION_H_INCLUDED )
#define STONING_ANIMATION_H_INCLUDED

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "counted_animation.h"
#include "counted_idle_processor.h"
#include "sized_int_types.h"

class t_combat_creature;

// -----------------------------------------------------------------
// play animation which turns creature gray
// -----------------------------------------------------------------
class t_stoning_animation : public t_counted_idle_processor, public t_counted_animation
{
public:
	t_stoning_animation( t_combat_creature& creature, int killed );

	virtual void on_idle();
protected:
	t_combat_creature& m_creature;
	int				   m_killed;
};

typedef t_counted_ptr< t_stoning_animation > t_stoning_animation_ptr;

// -----------------------------------------------------------------
// play animation which turns creature blue
// -----------------------------------------------------------------
class t_freeze_animation : public t_counted_idle_processor, public t_counted_animation
{
public:
	t_freeze_animation( t_combat_creature& creature );

	virtual void on_idle();
protected:
	t_combat_creature& m_creature;
};

typedef t_counted_ptr< t_freeze_animation > t_freeze_animation_ptr;

#endif // STONING_ANIMATION_H_INCLUDED